Java UI : Effects for Controlling UI Object Access

نویسندگان

  • Colin S. Gordon
  • Werner Dietl
  • Michael D. Ernst
  • Dan Grossman
چکیده

Most graphical user interface (GUI) libraries forbid accessing UI elements from threads other than the UI event loop thread. Violating this requirement leads to a program crash or an inconsistent UI. Unfortunately, such errors are all too common in GUI programs. We present a polymorphic type and effect system that prevents non-UI threads from accessing UI objects or invoking UI-thread-only methods. The type system still permits non-UI threads to hold and pass references to UI objects. We implemented this type system for Java and annotated 8 Java programs (over 140KLOC) for the type system, including several of the most popular Eclipse plugins. We confirmed bugs found by unsound prior work, found an additional bug and code smells, and demonstrated that the annotation burden is low. We also describe code patterns our effect system handles less gracefully or not at all, which we believe offers lessons for those applying other effect systems to existing code.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

JavaUI: Effects for Controlling UI Object Access (Extended Version)?

Most graphical user interface (GUI) libraries forbid accessing UI elements from threads other than the UI event loop thread. Violating this requirement leads to a program crash or an inconsistent UI. Unfortunately, such errors are all too common in GUI programs. We present a polymorphic type and effect system that prevents non-UI threads from accessing UI objects or invoking UI-thread-only meth...

متن کامل

Interaction with the Internet of Things

UI generation stylesheet Abstract UI to XHTML stylesheet Abstract UI description XHTML [Java ME] Apache Cocoon framework OWL-S description Service User Interface Annotation description Abstract widget type modelwidget type model Abstract parameter type modelparameter type model Figure 2. The Pervasive Service Interaction (Perci) framework architecture. Perci provides for integrated interaction ...

متن کامل

An Extensible Set-Top-Box Architecture for Interactive and Broadcast Services Offering Sophisticated User Guidance

Currently available Set-Top-Boxes (STBs) are mainly used for digital TV reception. The User Interface (UI) and the UI dialog of such a device usually focus on its technological aspects and to a large degree ignore the needs of the user. The impact is that the user quite often is unsatisfied when interacting with the device. Recent UI design approaches [9][10] are proving that the focus should b...

متن کامل

Factors Associated with Postmenopausal Women’s Decisions to Seek Treatment for Urinary Incontinence

Urinary incontinence (UI) is highly prevalent crossculturally and also a costly chronic condition (1), with high prevalence among postmenopausal women (2). International Continence Society defined UI as any complaint about involuntary urine leakage (3). UI significantly affects patients (4); avoiding its treatment might have physical, psychosocial, and economic consequences (5), and finally dec...

متن کامل

ClientJS: Migrating Java UI Clients to HTML 5 and JavaScript - An Experience Report

We were tasked with migrating an existing web based Java applet User Interface (UI) to a UI solution based on HTML 5 and JavaScript. This new UI addresses problems with multiple browsers, Java Runtime Environments (JREs), and operating system incompatibilities and allows for display on mobile devices that do not support JRE. This report briefly describes the approach we used for the ClientJS pr...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2013